Enterprises are complex organizations that often span multiple geographies, cultures, and authorities. Enterprises may include long-lived software systems such as websites that are accessible through a web-tier by a potentially unlimited number of end users. Over time, the website may be expanded to include languages, formats and other features. Through continual cycles of upgrade and redevelopment required for new and expanded functionality, enterprise-class software systems supporting enterprise websites can accrue significant cost and complexity.
The process of making content available to a website system so that the website system can distribute the content to a final target audience (e.g., World Wide Web users, corporate intranet users or other audience) is generally referred to as publication. In some publication models, website content is developed in a development environment and then published to a production environment such that the production website system can provide content to the target audience.
Publication of a website can be a time consuming process, particularly when a new version of a website is published (e.g., a version of the website in a new language, a version of the website in a new format, etc.). To address this problem, some enterprises may wait until an entire version of a website is ready and then publish the second version of the website at once. For a large website, however, the amount of content published may cause significant network delays as the content is migrated to the website's servers. In some cases, this may mean that some pages or portions of pages for the second version are available while others are not and may cause disruption of service.
This may lead to a frustrating problem for end users. In particular, an end user may see that a version of a website (or page) is available and request content associated with that version, but receive errors because the requested content for the version is not actually available yet. Consequently, today's content management systems continue to struggle with various issues such as cost and complexity involved in managing multiple versions of a website.